package session.stateless.MRP.SaleForecast;

import entity.Product;
import entity.MRP.SaleForecast.AnnualSaleFigure;
import entity.MRP.SaleForecast.MonthlySaleFigure;
import entity.MRP.SaleForecast.SaleFigureLineItem;
import javax.ejb.Local;
import java.util.List;
import javaclass.ProductType;

@Local
public interface SaleFigureBeanLocal {
    public MonthlySaleFigure getMonthlySaleFigure(int year, int month);
    public List<MonthlySaleFigure> getMonthlySaleFigures(int year, int startPeriod, int endPeriod);
    public void updateSaleFigure(int year, int month, Product product, long quantityInCases, long promotionQuantityInCases);
    public void updateSaleFigureLineItem(long saleForecastLineItemId, SaleFigureLineItem saleForecastLineItem);
    public void editSaleFigure(long monthId, List<SaleFigureLineItem> saleFigureLineItems);
    public void generateAnnualSaleFigureBase(int year);
    public List<AnnualSaleFigure> getAnnualSaleFigures();
    public AnnualSaleFigure getAnuualSaleFigure(int year);
    public SaleFigureLineItem findInListSaleFigure(ProductType productType, List<SaleFigureLineItem> saleFigureLineItems);
}
